﻿/* AgileFx Version 1.0
 * An open-source framework for rapid development of applications and services using Microsoft.net
 * Developed by: AgileHead
 * Website: www.agilefx.org
 * This component is licensed under the terms of the Apache 2.0 License.
 */

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Linq.Expressions;

namespace AgileFx.EF
{
    public abstract class EntityLoadSettings<T>
    {
        public bool LoadRelatedByDefault { get; set; }
        public Expression<Func<T, object>>[] Includes { get; set; }

        public EntityLoadSettings(bool loadRelatedByDefault, params Expression<Func<T, object>>[] includes)
        {
            this.LoadRelatedByDefault = loadRelatedByDefault;
            this.Includes = includes;
        }
    }
}